From: Florian Müllner Date: Thu, 4 Oct 2018 14:52:34 +0000 (+0200) Subject: panel: Ignore shell-shows-app-menu setting X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~897^2^2~12 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=c334aa2a4c0fd0f868f93dcdff46444384e49322;p=gnome-shell.git panel: Ignore shell-shows-app-menu setting The GtkSettings was originally introduced to inform applications about the desktop shell's capabilities, but users soon started to use it to force GTK+ to show the app menu inside the application. We eventually caved and also handled the setting ourselves to hide the in-shell app menu to allow users to "move" it. But now the remote app menu is in the process of being retired[0], and will be replaced with a simple indicator that cannot be moved, so stop following the GtkSetting. [0] https://gitlab.gnome.org/GNOME/Initiatives/wikis/App-Menu-Retirement https://gitlab.gnome.org/GNOME/gnome-shell/issues/624 --- diff --git a/js/ui/panel.js b/js/ui/panel.js index 6457f54db..f9fe29ede 100644 --- a/js/ui/panel.js +++ b/js/ui/panel.js @@ -122,14 +122,11 @@ var AppMenuButton = GObject.registerClass({ this._arrow = PopupMenu.arrowIcon(St.Side.BOTTOM); this._container.add_actor(this._arrow); - this._visible = this._gtkSettings.gtk_shell_shows_app_menu && - !Main.overview.visible; + this._visible = !Main.overview.visible; if (!this._visible) this.hide(); this._overviewHidingId = Main.overview.connect('hiding', this._sync.bind(this)); this._overviewShowingId = Main.overview.connect('showing', this._sync.bind(this)); - this._showsAppMenuId = this._gtkSettings.connect('notify::gtk-shell-shows-app-menu', - this._sync.bind(this)); this._stop = true; @@ -305,12 +302,7 @@ var AppMenuButton = GObject.registerClass({ } } - let shellShowsAppMenu = this._gtkSettings.gtk_shell_shows_app_menu; - Meta.prefs_set_show_fallback_app_menu(!shellShowsAppMenu); - - let visible = (this._targetApp != null && - shellShowsAppMenu && - !Main.overview.visibleTarget); + let visible = (this._targetApp != null && !Main.overview.visibleTarget); if (visible) this.fadeIn(); else @@ -383,10 +375,6 @@ var AppMenuButton = GObject.registerClass({ Main.overview.disconnect(this._overviewShowingId); this._overviewShowingId = 0; } - if (this._showsAppMenuId > 0) { - this._gtkSettings.disconnect(this._showsAppMenuId); - this._showsAppMenuId = 0; - } if (this._switchWorkspaceNotifyId > 0) { global.window_manager.disconnect(this._switchWorkspaceNotifyId); this._switchWorkspaceNotifyId = 0;